home *** CD-ROM | disk | FTP | other *** search
/ BMUG Revelations / BMUG Revelations.toast / Programming / Programming Languages / Harvest C / MPW Int & Lib / Interfaces / Resources.h < prev    next >
C/C++ Source or Header  |  1991-04-17  |  5KB  |  168 lines

  1. /************************************************************
  2.  
  3. Created: Sunday, January 6, 1991 at 9:50 PM
  4.     Resources.h
  5.     C Interface to the Macintosh Libraries
  6.  
  7.  
  8.         Copyright Apple Computer, Inc.    1985-1990
  9.         All rights reserved
  10.  
  11. ************************************************************/
  12.  
  13.  
  14. #ifndef __RESOURCES__
  15. #define __RESOURCES__
  16.  
  17. #ifndef __TYPES__
  18. #include <Types.h>
  19. #endif
  20.  
  21. #ifndef __FILES__
  22. #include <Files.h>
  23. #endif
  24.  
  25.  
  26. enum {
  27.  
  28.     resSysHeap = 64,    /*System or application heap?*/
  29.     resPurgeable = 32,  /*Purgeable resource?*/
  30.     resLocked = 16,     /*Load it in locked?*/
  31.     resProtected = 8,   /*Protected?*/
  32.     resPreload = 4,     /*Load in on OpenResFile?*/
  33.     resChanged = 2,     /*Resource changed?*/
  34.     mapReadOnly = 128,  /*Resource file read-only*/
  35.     mapCompact = 64,    /*Compact resource file*/
  36.     mapChanged = 32,    /*Write map out at updat*/
  37.  
  38. /* Values for setting RomMapInsert and TmpResLoad */
  39.     mapTrue = 0xFFFF,   /*insert ROM map w/ TmpResLoad = TRUE.*/
  40.     mapFalse = 0xFF00   /*insert ROM map w/ TmpResLoad = FALSE.*/
  41. };
  42.  
  43. #ifdef __cplusplus
  44. extern "C" {
  45. #endif
  46. pascal short InitResources(void)
  47.     = 0xA995; 
  48. pascal void RsrcZoneInit(void)
  49.     = 0xA996; 
  50. pascal void CloseResFile(short refNum)
  51.     = 0xA99A; 
  52. pascal short ResError(void)
  53.     = 0xA9AF; 
  54. pascal short CurResFile(void)
  55.     = 0xA994; 
  56. pascal short HomeResFile(Handle theResource)
  57.     = 0xA9A4; 
  58. pascal void CreateResFile(ConstStr255Param fileName)
  59.     = 0xA9B1; 
  60. pascal short OpenResFile(ConstStr255Param fileName)
  61.     = 0xA997; 
  62. pascal void UseResFile(short refNum)
  63.     = 0xA998; 
  64. pascal short CountTypes(void)
  65.     = 0xA99E; 
  66. pascal short Count1Types(void)
  67.     = 0xA81C; 
  68. pascal void GetIndType(ResType *theType,short index)
  69.     = 0xA99F; 
  70. pascal void Get1IndType(ResType *theType,short index)
  71.     = 0xA80F; 
  72. pascal void SetResLoad(Boolean load)
  73.     = 0xA99B; 
  74. pascal short CountResources(ResType theType)
  75.     = 0xA99C; 
  76. pascal short Count1Resources(ResType theType)
  77.     = 0xA80D; 
  78. pascal Handle GetIndResource(ResType theType,short index)
  79.     = 0xA99D; 
  80. pascal Handle Get1IndResource(ResType theType,short index)
  81.     = 0xA80E; 
  82. pascal Handle GetResource(ResType theType,short theID)
  83.     = 0xA9A0; 
  84. pascal Handle Get1Resource(ResType theType,short theID)
  85.     = 0xA81F; 
  86. pascal Handle GetNamedResource(ResType theType,ConstStr255Param name)
  87.     = 0xA9A1; 
  88. pascal Handle Get1NamedResource(ResType theType,ConstStr255Param name)
  89.     = 0xA820; 
  90. pascal void LoadResource(Handle theResource)
  91.     = 0xA9A2; 
  92. pascal void ReleaseResource(Handle theResource)
  93.     = 0xA9A3; 
  94. pascal void DetachResource(Handle theResource)
  95.     = 0xA992; 
  96. pascal short UniqueID(ResType theType)
  97.     = 0xA9C1; 
  98. pascal short Unique1ID(ResType theType)
  99.     = 0xA810; 
  100. pascal short GetResAttrs(Handle theResource)
  101.     = 0xA9A6; 
  102. pascal void GetResInfo(Handle theResource,short *theID,ResType *theType,
  103.     Str255 name)
  104.     = 0xA9A8; 
  105. pascal void SetResInfo(Handle theResource,short theID,ConstStr255Param name)
  106.     = 0xA9A9; 
  107. pascal void AddResource(Handle theResource,ResType theType,short theID,
  108.     ConstStr255Param name)
  109.     = 0xA9AB; 
  110. pascal long SizeResource(Handle theResource)
  111.     = 0xA9A5; 
  112. pascal long MaxSizeRsrc(Handle theResource)
  113.     = 0xA821; 
  114. pascal long RsrcMapEntry(Handle theResource)
  115.     = 0xA9C5; 
  116. pascal void SetResAttrs(Handle theResource,short attrs)
  117.     = 0xA9A7; 
  118. pascal void ChangedResource(Handle theResource)
  119.     = 0xA9AA; 
  120. pascal void RmveResource(Handle theResource)
  121.     = 0xA9AD; 
  122. pascal void UpdateResFile(short refNum)
  123.     = 0xA999; 
  124. Handle getnamedresource(ResType theType,char *name); 
  125. pascal void WriteResource(Handle theResource)
  126.     = 0xA9B0; 
  127. pascal void SetResPurge(Boolean install)
  128.     = 0xA993; 
  129. Handle get1namedresource(ResType theType,char *name); 
  130. pascal short GetResFileAttrs(short refNum)
  131.     = 0xA9F6; 
  132. pascal void SetResFileAttrs(short refNum,short attrs)
  133.     = 0xA9F7; 
  134. pascal short OpenRFPerm(ConstStr255Param fileName,short vRefNum,char permission)
  135.     = 0xA9C4; 
  136. pascal Handle RGetResource(ResType theType,short theID)
  137.     = 0xA80C; 
  138. pascal short HOpenResFile(short vRefNum,long dirID,ConstStr255Param fileName,
  139.     char permission); 
  140. pascal void HCreateResFile(short vRefNum,long dirID,ConstStr255Param fileName); 
  141.  
  142. pascal short FSpOpenResFile(const FSSpec *spec,SignedByte permission)
  143.     = {0x303C,0x000D,0xAA52}; 
  144. pascal void FSpCreateResFile(const FSSpec *spec,OSType creator,OSType fileType,
  145.     ScriptCode scriptTag)
  146.     = {0x303C,0x000E,0xAA52}; 
  147. /*  partial resource calls  */
  148. pascal void ReadPartialResource(Handle theResource,long offset,void *buffer,
  149.     long count)
  150.     = {0x7001,0xA822}; 
  151. pascal void WritePartialResource(Handle theResource,long offset,const void *buffer,
  152.     long count)
  153.     = {0x7002,0xA822}; 
  154. pascal void SetResourceSize(Handle theResource,long newSize)
  155.     = {0x7003,0xA822}; 
  156.  
  157. short openrfperm(char *fileName,short vRefNum,char permission); 
  158. short openresfile(char *fileName); 
  159. void createresfile(char *fileName); 
  160. void getresinfo(Handle theResource,short *theID,ResType *theType,char *name); 
  161. void setresinfo(Handle theResource,short theID,char *name); 
  162. void addresource(Handle theResource,ResType theType,short theID,char *name); 
  163. #ifdef __cplusplus
  164. }
  165. #endif
  166.  
  167. #endif
  168.